import { listAll } from '@/api/admin/sys/sys-dict'

const dict = {
  state: {
    /**
     * 数据字典 MAP
     * key：数据字典大类枚举值 dictType
     * dictValue：数据字典小类数值 {dictValue: '', dictLabel: ''} 的数组
     */
    dictData: {}
  },
  mutations: {
    SET_DICT_DATA: (state, dictData) => {
      state.dictData = dictData
    }
  },
  actions: {
    loadDict({ commit }) {
      listAll().then(response => {
        // 如果未加载到数据，则直接返回
        if (!response || !response.data) {
          return;
        }
        // 设置数据
        const dictDataMap = {}
        response.data.data.forEach(dictData => {
          // 获得 dictType 层级
          const enumValueObj = dictDataMap[dictData.dictType]
          if (!enumValueObj) {
            dictDataMap[dictData.dictType] = []
          }
          // 处理 dictValue 层级
          dictDataMap[dictData.dictType].push({
            value: dictData.dictValue,
            label: dictData.dictLabel,
            colorType: dictData.colorType
          })
        })
        // 存储到 Store 中
        commit('SET_DICT_DATA', dictDataMap)
      })
    }
  }
}
export default dict



/*const state = {
  /!**
   * 数据字典 MAP
   * key：数据字典大类枚举值 dictType
   * dictValue：数据字典小类数值 {dictValue: '', dictLabel: ''} 的数组
   *!/
  dictDatas: {}
}

const mutations = {
  SET_DICT_DATAS: (state, dictDatas) => {
    state.dictDatas = dictDatas
  }
}

const actions = {
  loadDict({ commit }) {
    listAll().then(response => {
      // 如果未加载到数据，则直接返回
      if (!response || !response.data) {
        return;
      }
      console.log("字典列表",response.data)
      // 设置数据
      const dictDataMap = {}
      response.data.data.forEach(dictData => {
        // 获得 dictType 层级
        const enumValueObj = dictDataMap[dictData.dictType]
        if (!enumValueObj) {
          dictDataMap[dictData.dictType] = []
        }
        // 处理 dictValue 层级
        dictDataMap[dictData.dictType].push({
          value: dictData.value,
          label: dictData.label,
          colorType: dictData.colorType,
          cssClass: dictData.cssClass,
        })
      })
      // 存储到 Store 中
      commit('SET_DICT_DATAS', dictDataMap)
    })
  }
}

export default {
  namespaced: true,
  state,
  mutations,
  actions
}*/
